/*1 代码重构
2 新式子弹
3 静止敌机
4 敌机移动
5 击中敌机
6 更新清屏功能*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
//全局变量命名
int position_x,position_y;//飞机位置
int bullet_x,bullet_y;  //子弹位置
int high,width;           //游戏画面尺度

void start()              //数据初始化
{
    high=18;
    width=30;

    position_x=high/2;
    position_y=width/2;

    bullet_x=-1;
    bullet_y=0;
}

void show()         //显示画面
{
    int i,j;
    system("cls");

    for(i=0;i<width/2;i++)
        printf(" ");
    printf("@\n");
    for(i=0;i<position_x;i++)
    {
        for(j=0;j<position_y;j++)
        {
            printf(" ");
        }
        printf("|\n");
    }
    for(j=0;j<position_y;j++)
    {
        printf(" ");
    }
    printf("*");
}


void update_without_input() //与用户输入无关的
{

}

void update_with_input()
{
    char input;
    if(kbhit())//当用户按键时执行
    {
        input=getch();
        if(input=='s')
            position_x++;
        if(input=='w')
            position_x--;
        if(input=='d')
            position_y++;
        if(input=='a')
            position_y--;
        if(input==' ')
        {
            bullet_x=position_x-1;
            bullet_y=position_y;
        }
    }
}

int main()
{
    start();
    while(1)
    {
        show();
        update_without_input();
        update_with_input();
    }
    return 0;
}